import { fileURLToPath, URL } from 'node:url'
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'

// 生产环境配置
export default defineConfig({
  plugins: [
    vue(),
  ],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    },
  },
  build: {
    outDir: 'dist',
    assetsDir: 'assets',
    sourcemap: false,
    // 生产环境移除console和debugger
    minify: 'terser',
    terserOptions: {
      compress: {
        drop_console: true,
        drop_debugger: true,
      },
    },
    rollupOptions: {
      output: {
        // 分包策略
        manualChunks: {
          vue: ['vue'],
          router: ['vue-router'],
          // 其他第三方库
          vendor: ['axios'],
        }
      }
    }
  },
  // 生产环境不需要代理，因为前后端部署在同一域名下
  // 或者使用Nginx反向代理
})